import matplotlib.pyplot as plt
import numpy as np

import datetime
from matplotlib.dates import DateFormatter, DayLocator, HourLocator, MinuteLocator, date2num, num2date
 
# 创建日期时间数组
dates = [datetime.datetime(2023, 1, 1) + datetime.timedelta(minutes=x) for x in range(60 * 3)]  # 一天内的每小时数据
times = [date2num(d) for d in dates]  # 将datetime对象转换为Matplotlib可读的格式
 
# 生成相应的数值数据，例如随时间变化的随机数
# values = np.random.randn(len(times))  # 随机数示例
values = np.array(range(len(times)))
 
# 绘制曲线图
plt.plot(times, values, 'o')
plt.gca().xaxis.set_major_formatter(DateFormatter('%H:%M'))  # 设置日期时间格式
plt.gca().xaxis.set_major_locator(HourLocator())  # 设置小时刻度间隔
plt.title('Time Data Curve with Dates')
plt.xlabel('Date')
plt.ylabel('Value')
plt.grid(True)  # 显示网格
plt.show()






